11 research outputs found
Synthesis of correct-by-construction behavior trees
In this paper we study the problem of synthesizing correct-by-construction Behavior Trees (BTs) controlling agents in adversarial environments. The proposed approach combines the modularity and reactivity of BTs with the formal guarantees of Linear Temporal Logic (LTL) methods. Given a set of admissible environment specifications, an agent model in form of a Finite Transition System and the desired task in form of an LTL formula, we synthesize a BT in polynomial time, that is guaranteed to correctly execute the desired task. To illustrate the approach, we present three examples of increasing complexity
Conditional behavior trees: Definition, executability, and applications
Behavior Trees (BTs) are gaining acceptance in robotics to specify action policies at the deliberative level. Their advantages include modularity, ease of use and increasing tool support. In this paper, we define Conditional Behavior Trees (CBTs) as an extension of BTs wherein actions are decorated considering pre-and post-conditions. CBTs improve on basic BTs in that they enable monitoring the execution of single actions by checking pre-and post-conditions, respectively. Since there might exist action sequences wherein some preconditions are violated, CBT executability may depend on the success/failure of specific actions. We developed an encoding of CBT executability into satisfiability of propositional formulas to be checked off-line in a publicly-available tool that computes the encoding for generic CBTs. For the kind of application scenarios and related behavior specifications that we consider, we show that our approach is effective and yields formal guarantees about the executability of deliberative policies designed as CBTs
Synthesis of reactive control protocols for switch electrical power systems for commercial application with safety specifications
This paper presents a method for the reactive synthesis of fault-tolerant optimal control protocols for a finite deterministic discrete event system subject to safety specifications. A Deterministic Finite State Machine (DFSM) and Behavior Tree (BT) were used to model the system. The synthesis procedure involves formulating the policy problem as a shortest path dynamic programming problem. The procedure evaluates all possible states when applied to the DFSM, or over all possible actions when applied to the BT. The resulting strategy minimizes the number of actions performed to meet operational objectives without violating safety conditions. The effectiveness of the procedure on DFSMs and BTs is demonstrated through three examples of switched electrical power systems for commercial application and analyzed using run-time complexity analysis. The results demonstrated that for large order system BTs provided a tractable model to synthesize an optimal control policy
Formalizing the Execution Context of Behavior Trees for Runtime Verification of Deliberative Policies
In this paper, we enable automated property verification of deliberative components in robot control architectures. We focus on formalizing the execution context of Behavior Trees (BTs) to provide a scalable, yet formally grounded, methodology to enable runtime verification and prevent unexpected robot behaviors. To this end, we consider a message-passing model that accommodates both synchronous and asynchronous composition of parallel components, in which BTs and other components execute and interact according to the communication patterns commonly adopted in robotic software architectures. We introduce a formal property specification language to encode requirements and build runtime monitors. We performed a set of experiments, both on simulations and on the real robot, demonstrating the feasibility of our approach in a realistic application and its integration in a typical robot software architecture. We also provide an OS-level virtualization environment to reproduce the experiments in the simulated scenario
Towards Architecture-wide Analysis, Verification, and Validation for Total System Stability During Goal-Seeking Space Robotics Operations
In this paper we discuss the beginnings of an attempt to define and analyze the stability of an entire modular robotic system architecture – one which includes a three-tier (3T) layer breakdown of capabilities, with symbolic, deterministic planning at the highest level. We approach the problem from the standpoint of a control theory outlook, and try to formalize the issues that result from trying to quantitatively characterize the overall performance of a well-defined system without a need for exhaustive testing. We start by discussing the concept of bounded-input bounded-output stability, giving examples where the technique might not be sufficient to guarantee what we term “total system stability” due to complications associated with the levels of abstraction between the modules and components that are being chained together in the architecture. We then go on to discuss necessary conditions that may fall out of this naturally as a result. We further try to better-define the input and output constraints needed to guarantee total system stability, using an assumption-guarantee-like contractual framework that sits alongside the architecture; the requirements then may have influence across multiple modules, in order to keep consistency. We also discuss how the structure of the architectural modules may help or hinder the process of capability characterization and performance analysis of each module and a given architecture configuration as a whole. We then discuss two overlapping methods that, combined, should allow us to analyze the effectiveness of the architecture, and help towards verification and validation of both the components and the system as a whole. Demonstrative examples are given using a specific architectural implementation called the Resilient Spacecraft Executive. In future work, we hope to define both necessary and sufficient conditions for total system stability across such a system architecture for robotics useQC 20201124</p
Towards Architecture-wide Analysis, Verification, and Validation for Total System Stability During Goal-Seeking Space Robotics Operations
In this paper we discuss the beginnings of an attempt to define and analyze the stability of an entire modular robotic system architecture - one which includes a three-tier (3T) layer breakdown of capabilities, with symbolic, deterministic planning at the highest level. We approach the problem from the standpoint of a control theory outlook, and try to formalize the issues that result from trying to quantitatively characterize the overall performance of a well-defined system without a need for exhaustive testing. We start by discussing the concept of bounded-input bounded-output stability, giving examples where the technique might not be sufficient to guarantee what we term "total system stability" due to complications associated with the levels of abstraction between the modules and components that are being chained together in the architecture. We then go on to discuss necessary conditions that may fall out of this naturally as a result. We further try to better-define the input and output constraints needed to guarantee total system stability, using an assumption-guarantee-like contractual framework that sits alongside the architecture; the requirements then may have influence across multiple modules, in order to keep consistency. We also discuss how the structure of the architectural modules may help or hinder the process of capability characterization and performance analysis of each module and a given architecture configuration as a whole. We then discuss two overlapping methods that, combined, should allow us to analyze the effectiveness of the architecture, and help towards verification and validation of both the components and the system as a whole. Demonstrative examples are given using a specific architectural implementation called the Resilient Spacecraft Executive. In future work, we hope to define both necessary and sufficient conditions for total system stability across such a system architecture for robotics
use
Evolving Behaviour Tree Structures Using Grammatical Evolution
Behaviour Trees are control structures with many applications in computer science, including robotics, control systems, and computer games. They allow the specification of controllers from very broad behaviour definitions (close to the root of the tree) down to very specific technical implementations (near the leaves); this allows them to be understood and extended by both behaviour designers and technical programmers. This chapter describes the process of applying Grammatical Evolution (GE) to evolve Behaviour Trees for a real-time video-game: the Mario AI Benchmark. The results obtained show that these structures are quite amenable to artificial evolution using GE, and can provide a good balance between long-term (pathfinding) and short-term (reactiveness to hazards and power-ups) planning within the same structure
Towards architecture-wide analysis, verification, and validation for total system stability during goal-seeking space robotics operations
In this paper we discuss the beginnings of an attempt to define and analyze the stability of an entire modular robotic system architecture - one which includes a three-tier (3T) layer breakdown of capabilities, with symbolic, deterministic planning at the highest level. We approach the problem from the standpoint of a control theory outlook, and try to formalize the issues that result from trying to quantitatively characterize the overall performance of a well-defined system without a need for exhaustive testing. We start by discussing the concept of bounded-input bounded-output stability, giving examples where the technique might not be sufficient to guarantee what we term “total system stability” due to complications associated with the levels of abstraction between the modules and components that are being chained together in the architecture. We then go on to discuss necessary conditions that may fall out of this naturally as a result. We further try to better-define the input and output constraints needed to guarantee total system stability, using an assumption-guarantee-like contractual framework that sits alongside the architecture; the requirements then may have influence across multiple modules, in order to keep consistency. We also discuss how the structure of the architectural modules may help or hinder the process of capability characterization and performance analysis of each module and a given architecture configuration as a whole. We then discuss two overlapping methods that, combined, should allow us to analyze the effectiveness of the architecture, and help towards verification and validation of both the components and the system as a whole. Demonstrative examples are given using a specific architectural implementation called the Resilient Spacecraft Executive. In future work, we hope to define both necessary and sufficient conditions for total system stability across such a system architecture for robotics use.QC 20170216</p
Behavior trees as a control architecture in the automatic modular design of robot swarms
Previous research has shown that automatically combining low-level behaviors into a probabilistic finite state machine produces control software that crosses the reality gap satisfactorily. In this paper, we explore the possibility of adopting behavior trees as an architecture for the control software of robot swarms. We introduce Maple: an automatic design method that combines preexisting modules into behavior trees. To highlight the potential of this control architecture, we present robot experiments in which we compare Maple with Chocolate and EvoStick on two missions: foraging and aggregation. Chocolate and EvoStick are two previously published automatic design methods. Chocolate is a modular method that generates probabilistic finite state machines and EvoStick is a traditional evolutionary robotics method. The results of the experiments indicate that behavior trees are a viable and promising architecture to automatically generate control software for robot swarms.info:eu-repo/semantics/publishe